-
-
Notifications
You must be signed in to change notification settings - Fork 38.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add kb and user level keyboard initialization functions #3113
Conversation
Since, I'd like to get this merges sooner, rather than later ....
Changed to Also, I'm sure that additional functions can be added to the initialization process, but I'm not as comfortable with that stuff, but I can/will see about adding it later. |
keyboard_init
startup
functions
bdc9603
to
7c462da
Compare
Co-Authored-By: drashna <drashna@live.com>
Co-Authored-By: drashna <drashna@live.com>
77b81c0
to
77565b0
Compare
@drashna 👍 nice one |
Yeah, this is my favorite code changes that I have written. It makes setting rgblight (not matrix) on startup trival. |
Change to use keyboard_post_init_user() hook (qmk#3113)
Change to use keyboard_post_init_user() hook (#3113)
Change to use keyboard_post_init_user() hook (qmk#3113)
* Use string with delay * Add skipped region to ergodox * Add send string config * Use default_layer_state instead of function * Fully generalize keyboards * old iris cleanup * Fix Drashna keymap compile issues By checking to see if secret.c exists before actually trying to add it * Remove unnecessary references * Add 4x12 ortho board * Update userspace readme for secrets * Make RGB more modular * Fix iris keymap, since we don't need the lower left (Function keys) * Fix includes * Add Blanks * Fix Ergodox lower layer * Add suspend commands * Add Maltron Layout * Add additional layouts * Finish adding gamepad to Iris * Tweaks to iris gamepag layer * make gaming layers more friendly * minor gaming layer tweak * Add Carplax * Add modded key timer function * Cleanup and macro documentation * Add QMK DFU info * Add 'old' keymap for 12 LED spare * Update Pro Micro documentation * Disable twinkling so it fits in firmware space * Switch to QMK DFU bootloader, since it's better anyhow * Write default layer state colors to EEPROM Since we are writing to EEPROM anyways, and this way, it sticks on reboot * Fix QMK DFU bootloader options * More updates for QMK DFU support * Use matrix scanning hack for startup_user until qmk#3113 gets merged * Fix indicator light consistency issue * Add/readd ifdefs to indicators * Add/readd alt indicator * Remove RGB Twinkling from Viterbi macro pad * Fix default layer color detection * Fix rebase and detection issues * Cleanup code so it will compile if RGBLIGHT is disabled * Revert vsode settings * Use Pragma Once instead of boilerplate code
* Add suspend functions * Disable RGB code if it's disabled * Add keyboard_init functions * Change where references so it will compile * Wrong command chained in wake up kb function * Fix non-feature file changes * Add documentation * Re-add matrix init docs * add rgblight code to example * Remove suspend code * Clean up docs * Fix docs * Fix suspend code * more doc fixes * change function to startup_* rather than keyboard_init_ * fix spelling error * fix up docs to finish removing keyboard_init * Use Pre and Post init functions * Update Documenation * Remove changes to my keymap and userspace code * Cleanup * Revert changes to extra files * Forgot a semicolon * Make sure all protocols call keyboard_setup * Cleanup functions * Unset startup_user * Remove changes from division keyboard * Readd startup_user function * Remove all to startup_user * Update docs/custom_quantum_functions.md Co-Authored-By: drashna <drashna@live.com> * Update docs/custom_quantum_functions.md Co-Authored-By: drashna <drashna@live.com> * Add suggestion line * Rebase fixes * Update documentation to be more useful/accurate * Cleanup of documentation * Fix spacing inconsistency * Revert unexpected change to keymap
Change to use keyboard_post_init_user() hook (qmk#3113)
The
matrix_init_*
code currently runs too soon for certain tasks like setting RGB, requiring eeprom writing or using a timer check to properly run code.keyboard_pre_init_*
runs first thing, as part ofkeyboard_setup
, so it's configured before most everything.keyboard_post_init_*
runs as the very last task inkeyboard_init
.Also, this adds
keyboard_setup
to chibios and vusb, since they were not calling this function.